//---------------------------------------------------------------------------

#ifndef MobiliarioH
#define MobiliarioH
#include "Objetos3D.h"
#include "satellite.h"
#define an 3
#define al 2
#define gr 2
#include "convexo.h"
//---------------------------------------------------------------------------
class Mesa : public ObjetoCompuesto3D{

         public:
           Mesa(GLfloat alturaTablero, GLfloat largoTablero, GLfloat anchoTablero,
                GLfloat grosorTablero, GLfloat radioPata);
         private:

};
//---------------------------------------------------------------------------
class Silla : public ObjetoCompuesto3D{
       public:
                Silla(GLfloat alA, GLfloat lA, GLfloat anA,
                      GLfloat gA, GLfloat alR,GLfloat rP);

};
//---------------------------------------------------------------------------
class Puerta : public ObjetoCompuesto3D{

        private: int area;

        public:

             int getArea(){return area;};
             void setArea(int a){area=a;};
             Puerta(GLfloat alto, GLfloat ancho, GLfloat grosor);
             void abrir(){};
             void cerrar(){};
};
//---------------------------------------------------------------------------
class Plato : public ObjetoCompuesto3D{
        public:
             Plato(GLfloat radioPeq, GLfloat radioGran, GLfloat alt);
};
//---------------------------------------------------------------------------
class BrazoSilla : public ObjetoCompuesto3D{
        public:
             BrazoSilla(GLfloat largoBrazo, GLfloat altoBrazo, GLfloat grosorBrazo);
};
//---------------------------------------------------------------------------
class Estanteria : public ObjetoCompuesto3D{
        public:Estanteria(GLfloat anchoBalda,GLfloat largoBalda,GLfloat profBalda,
                          int numBaldas,GLfloat sepBaldas);  
};
//---------------------------------------------------------------------------
class Persiana : public ObjetoCompuesto3D{
        private:
                GLfloat anchoBalda;
                int sepBaldas;
                int numBaldas;
        public:
                Persiana(GLfloat anchoBalda_,GLfloat largoBalda,GLfloat profBalda,
                         int numBaldas_,GLfloat sepBaldas_);
                void giraPersiana(GLfloat ang);
                void recoger();
                void desplegar();
};
//---------------------------------------------------------------------------
class Lampara : public ObjetoCompuesto3D{
        public:
                Lampara(GLfloat altura,GLfloat radioM,GLfloat radiom,
                        int lados, int capas);
                      void  draw();
        private:
                GLfloat PosicionBombilla[4];
                void definirLuz();


};
//---------------------------------------------------------------------------
class Tablero : public Malla{

           public:
                Tablero(float largo, float ancho, float grosor,
                        int numPartesLargo, int numPartesAncho, int numPartesGrosor);
                void crearCara(int indiceCara, int vn1, int vn2, int vn3, int vn4);

           private:

};
//---------------------------------------------------------------------------
#endif
